-
Notifications
You must be signed in to change notification settings - Fork 661
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
OSPFv3 model #1257
base: master
Are you sure you want to change the base?
OSPFv3 model #1257
Conversation
/gcbrun |
No major YANG version changes in commit 87f1c25 |
@cpeng90 please check the ygot and linter errors. For example, all To avoid duplicating leaves, can the openconfig-ospf-area-interface.yang submodule replace the existing ospfv2 area interface submodule? (openconfig-ospfv2-area-interface.yang). Then this new ospf-area-interface sub module can serve as a common submodule for both v2 and v3? (And then the additional v3 leaves would continue to appear in the v3 module you are adding here). I haven't looked super closely yet, but if this would still result in the same ospfv2 tree to be rendered, without any breaking changes, then this is a good idea I think. If there would be breaking changes to the ospv2 tree, please point out where those would be. We certainly do not want to make any breaking changes to ospfv2 (or really any changes at all). |
Adding tree view: + | +--rw ospfv3
+ | | +--rw global
+ | | | +--rw config
+ | | | | +--rw router-id? yang:dotted-quad
+ | | | | +--rw log-adjacency-changes? boolean
+ | | | | +--rw hide-transit-only-networks? boolean
+ | | | | +--rw abr-capability? identityref
+ | | | +--ro state
+ | | | | +--ro router-id? yang:dotted-quad
+ | | | | +--ro log-adjacency-changes? boolean
+ | | | | +--ro hide-transit-only-networks? boolean
+ | | | | +--ro abr-capability? identityref
+ | | | +--rw timers
+ | | | | +--rw spf
+ | | | | | +--rw config
+ | | | | | | +--rw initial-delay? uint32
+ | | | | | | +--rw maximum-delay? uint32
+ | | | | | +--ro state
+ | | | | | +--ro initial-delay? uint32
+ | | | | | +--ro maximum-delay? uint32
+ | | | | | +--ro timer-type? enumeration
+ | | | | +--rw max-metric
+ | | | | | +--rw config
+ | | | | | | +--rw set? boolean
+ | | | | | | +--rw timeout? uint64
+ | | | | | | +--rw include* identityref
+ | | | | | | +--rw trigger* identityref
+ | | | | | +--ro state
+ | | | | | +--ro set? boolean
+ | | | | | +--ro timeout? uint64
+ | | | | | +--ro include* identityref
+ | | | | | +--ro trigger* identityref
+ | | | | +--rw lsa-generation
+ | | | | +--rw config
+ | | | | | +--rw initial-delay? uint32
+ | | | | | +--rw maximum-delay? uint32
+ | | | | +--ro state
+ | | | | +--ro initial-delay? uint32
+ | | | | +--ro maximum-delay? uint32
+ | | | | +--ro timer-type? enumeration
+ | | | +--rw graceful-restart
+ | | | | +--rw config
+ | | | | | +--rw enabled? boolean
+ | | | | | +--rw helper-only? boolean
+ | | | | +--ro state
+ | | | | +--ro enabled? boolean
+ | | | | +--ro helper-only? boolean
+ | | | +--rw inter-area-propagation-policies
+ | | | +--rw inter-area-propagation-policy* [src-area dst-area]
+ | | | +--rw src-area -> ../config/src-area
+ | | | +--rw dst-area -> ../config/dst-area
+ | | | +--rw config
+ | | | | +--rw src-area? -> ../../../../../areas/area/identifier
+ | | | | +--rw dst-area? -> ../../../../../areas/area/identifier
+ | | | | +--rw import-policy* -> /oc-rpol:routing-policy/policy-definitions/policy-definition/name
+ | | | | +--rw default-import-policy? default-policy-type
+ | | | +--ro state
+ | | | +--ro src-area? -> ../../../../../areas/area/identifier
+ | | | +--ro dst-area? -> ../../../../../areas/area/identifier
+ | | | +--ro import-policy* -> /oc-rpol:routing-policy/policy-definitions/policy-definition/name
+ | | | +--ro default-import-policy? default-policy-type
+ | | +--rw areas
+ | | +--rw area* [identifier]
+ | | +--rw identifier -> ../config/identifier
+ | | +--rw config
+ | | | +--rw identifier? oc-ospf-types:ospf-area-identifier
+ | | | +--rw type? identityref
+ | | | +--rw stub-default-cost? uint32
+ | | | +--rw import-summaries? boolean
+ | | | +--rw address-ranges* [prefix]
+ | | | +--rw prefix -> ../config/prefix
+ | | | +--rw config
+ | | | | +--rw prefix? inet:ip-prefix
+ | | | | +--rw status? enumeration
+ | | | +--ro state
+ | | | +--ro prefix? inet:ip-prefix
+ | | | +--ro status? enumeration
+ | | +--ro state
+ | | | +--ro identifier? oc-ospf-types:ospf-area-identifier
+ | | | +--ro type? identityref
+ | | | +--ro stub-default-cost? uint32
+ | | | +--ro import-summaries? boolean
+ | | | +--ro address-ranges* [prefix]
+ | | | +--ro prefix -> ../config/prefix
+ | | | +--ro config
+ | | | | +--ro prefix? inet:ip-prefix
+ | | | | +--ro status? enumeration
+ | | | +--ro state
+ | | | +--ro prefix? inet:ip-prefix
+ | | | +--ro status? enumeration
+ | | +--rw interfaces
+ | | | +--rw interface* [id]
+ | | | +--rw id -> ../config/id
+ | | | +--rw config
+ | | | | +--rw id? string
+ | | | | +--rw network-type? identityref
+ | | | | +--rw priority? uint8
+ | | | | +--rw multi-area-adjacency-primary? boolean
+ | | | | +--rw authentication-type? string
+ | | | | +--rw metric? oc-ospf-types:ospf-metric
+ | | | | +--rw passive? boolean
+ | | | | +--rw hide-network? boolean
+ | | | | +--rw oc-ospfv3:instance-id? uint8
+ | | | | +--rw oc-ospfv3:interface-id? uint32
+ | | | +--ro state
+ | | | | +--ro id? string
+ | | | | +--ro network-type? identityref
+ | | | | +--ro priority? uint8
+ | | | | +--ro multi-area-adjacency-primary? boolean
+ | | | | +--ro authentication-type? string
+ | | | | +--ro metric? oc-ospf-types:ospf-metric
+ | | | | +--ro passive? boolean
+ | | | | +--ro hide-network? boolean
+ | | | | +--ro dr-router-id? yang:dotted-quad
+ | | | | +--ro dr-ip-address? inet:ip-address
+ | | | | +--ro bdr-router-id? yang:dotted-quad
+ | | | | +--ro bdr-ip-address? inet:ip-address
+ | | | | +--ro oc-ospfv3:instance-id? uint8
+ | | | | +--ro oc-ospfv3:interface-id? uint32
+ | | | +--rw interface-ref
+ | | | | +--rw config
+ | | | | | +--rw interface? -> /oc-if:interfaces/interface/name
+ | | | | | +--rw subinterface? -> /oc-if:interfaces/interface[oc-if:name=current()/../interface]/subinterfaces/subinterface/index
+ | | | | +--ro state
+ | | | | +--ro interface? -> /oc-if:interfaces/interface/name
+ | | | | +--ro subinterface? -> /oc-if:interfaces/interface[oc-if:name=current()/../interface]/subinterfaces/subinterface/index
+ | | | +--rw timers
+ | | | | +--rw config
+ | | | | | +--rw dead-interval? uint32
+ | | | | | +--rw hello-interval? uint32
+ | | | | | +--rw retransmission-interval? uint32
+ | | | | | +--rw interface-transmission-delay? uint32
+ | | | | +--ro state
+ | | | | +--ro dead-interval? uint32
+ | | | | +--ro hello-interval? uint32
+ | | | | +--ro retransmission-interval? uint32
+ | | | | +--ro interface-transmission-delay? uint32
+ | | | +--rw lsa-filter
+ | | | | +--rw config
+ | | | | | +--rw all? boolean
+ | | | | +--ro state
+ | | | | +--ro all? boolean
+ | | | +--rw static-neighbors
+ | | | | +--rw static-neighbor* [neighbor-ip-address]
+ | | | | +--rw neighbor-ip-address -> ../config/neighbor-ip-address
+ | | | | +--rw config
+ | | | | +--rw neighbor-ip-address? inet:ip-address
+ | | | | +--rw metric? oc-ospf-types:ospf-metric
+ | | | | +--rw poll-interval? uint16
+ | | | | +--rw priority? uint8
+ | | | +--ro neighbors
+ | | | | +--ro neighbor* [router-id]
+ | | | | +--ro router-id -> ../state/router-id
+ | | | | +--ro state
+ | | | | +--ro router-id? yang:dotted-quad
+ | | | | +--ro neighbor-ip-address? inet:ip-address
+ | | | | +--ro priority? uint8
+ | | | | +--ro dead-time? oc-types:timeticks64
+ | | | | +--ro dr-router-id? yang:dotted-quad
+ | | | | +--ro dr-ip-address? inet:ip-address
+ | | | | +--ro bdr-router-id? yang:dotted-quad
+ | | | | +--ro bdr-ip-address? inet:ip-address
+ | | | | +--ro optional-capabilities? yang:hex-string
+ | | | | +--ro last-established-time? oc-types:timeticks64
+ | | | | +--ro adjacency-state? identityref
+ | | | | +--ro state-changes? uint32
+ | | | | +--ro retransmission-queue-length? uint32
+ | | | +--rw enable-bfd
+ | | | +--rw config
+ | | | | +--rw enabled? boolean
+ | | | | +--rw desired-minimum-tx-interval? uint32
+ | | | | +--rw required-minimum-receive? uint32
+ | | | | +--rw detection-multiplier? uint8
+ | | | +--ro state
+ | | | +--ro enabled? boolean
+ | | | +--ro desired-minimum-tx-interval? uint32
+ | | | +--ro required-minimum-receive? uint32
+ | | | +--ro detection-multiplier? uint8
+ | | +--rw virtual-links
+ | | +--rw virtual-link* [remote-router-id]
+ | | +--rw remote-router-id -> ../config/remote-router-id
+ | | +--rw config
+ | | | +--rw remote-router-id? inet:ipv4-address-no-zone
+ | | +--ro state
+ | | +--ro remote-router-id? inet:ipv4-address-no-zone
+ | | +--ro router-id? yang:dotted-quad
+ | | +--ro neighbor-ip-address? inet:ip-address
+ | | +--ro priority? uint8
+ | | +--ro dead-time? oc-types:timeticks64
+ | | +--ro dr-router-id? yang:dotted-quad
+ | | +--ro dr-ip-address? inet:ip-address
+ | | +--ro bdr-router-id? yang:dotted-quad
+ | | +--ro bdr-ip-address? inet:ip-address
+ | | +--ro optional-capabilities? yang:hex-string
+ | | +--ro last-established-time? oc-types:timeticks64
+ | | +--ro adjacency-state? identityref
+ | | +--ro state-changes? uint32
+ | | +--ro retransmission-queue-length? uint32
|
/gcbrun |
Note, the ygot check failing appears to be a problem with the github check, not your model. We'll fix that soon. |
Change Scope
This change defines a OSPFv3 Yang provisioning and operational model. The LS database definition and MPLS add-ons are out of the scope of this change.
The change is backward compatible.
Platform Implementations
[Note: Please provide at least two references to implementations which are relevant to the model changes proposed. Each implementation should be from separate organizations.].
[Note: If the feature being proposed is new - and something that is being
proposed as an enhancement to device functionality, it is sufficient to have
reviewers from the producers of two different implementations].